package com.example.demo.service;
import com.example.demo.entity.Article;
import org.springframework.data.domain.Sort.Direction;

import java.util.List;

public interface ArticleService {
    /**
     * 根据分页条件查询资源信息列表
     * @param s_article 条件
     * @param
     * @param userName     用户名
     * @param s_bpublishDate    发布开始时间
     * @param s_epublishDate    发布结束时间
     * @param page              当前页
     * @param pageSize          每页记录数
     * @param direction         排序规则
     * @param properties        排序字段
     * @return
     */
    public List<Article> list(Article s_article, String userName, String s_bpublishDate, String s_epublishDate, Integer page, Integer pageSize, Direction direction, String... properties);

    /**
     * 根据条件获取总记录数
     * @param s_article 条件
     * @param userName  用户名
     * @param s_bpublishDate    发布开始时间
     * @param s_epublishDate    发布结束时间
     * @return
     */
    public Long getCount(Article s_article, String userName, String s_bpublishDate, String s_epublishDate);

    /**
     * 增加或修改资源
     * @param article   资源实体
     */
    public void save(Article article);

    /**
     * 根据主键id删除资源
     * @param id    资源id
     */
    public void delete(Integer id);

    /**
     * 根据主键id获取资源信息
     * @param id   资源id
     * @return
     */
    public Article getById(Integer id);
}

